#include <atomic>
#include <chrono>
#include <iostream>
#include <string>
#include <sys/epoll.h>
#include <thread>
#include <vector>
#include <dirent.h>
#include <string.h>
#include <stdlib.h>

using namespace std;
using std::string;


#define STR(s)     #s
#define __CHANGE(upload, get) do { \
    if (upload != get) { \
        printf("%s was change.\n", STR(upload)); \
    } \
    upload = get; \
} while(0)


int main()
{
    int ab = 1, ac = 2;

    __CHANGE(ab, ac);

    return 0;
}

#if 0
__CHANGE(algoState.feature_home_point, m_algoStateFromCams.feature_home_point);
__CHANGE(algoState.feature_route_breakpoint, m_algoStateFromCams.feature_route_breakpoint);
__CHANGE(algoState.feature_circumambulation_tracks, m_algoStateFromCams.feature_circumambulation_tracks);
__CHANGE(algoState.feature_obstacle, m_algoStateFromCams.feature_obstacle);
__CHANGE(algoState.feature_all_ar, m_algoStateFromCams.feature_all_ar);
__CHANGE(algoState.feature_mapping_perception, m_algoStateFromCams.feature_mapping_perception);
__CHANGE(algoState.eis_work_state, m_algoStateFromCams.eis_work_mode);
#endif
